Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

deMeshOpt.hpp

Go to the documentation of this file.
00001 ///////////////////////////////////////////////////////////////////////////////
00002 /// @file deMeshOpt.hpp
00003 ///
00004 /// @brief Mesh Optimization
00005 ///
00006 /// @author Assassin
00007 ///
00008 /// This file is the intellectual property of Novus Delta, LLC.. Usage of the
00009 /// contents of this file is subject to the Destiny3D Member License which
00010 /// can be found at http://www.destiny3d.com.  Any other usage is prohibited.
00011 ///
00012 /// This file is distributed "AS IS" without warranty of any kind.  Novus
00013 /// Delta, LLC. does not guarantee the fitness of the contents of this file
00014 /// for any particular purpose.
00015 ///
00016 /// Copyright (C) 2001-2003 Novus Delta, LLC. All Rights Reserved.
00017 ///
00018 /// <hr>
00019 ///                                 Change History
00020 /// <hr>
00021 ///
00022 /// @date Feb 2003
00023 /// @author Assassin
00024 /// @remarks Creation
00025 ///
00026 ///////////////////////////////////////////////////////////////////////////////
00027 
00028 #ifndef DEMESHOPT_HPP
00029 #define DEMESHOPT_HPP
00030 
00031 #include "deGlobalTypes.hpp"
00032 #include "deBrush.hpp"
00033 
00034 #define DEMESHOPT_API DEBRUSH_API
00035 
00036 class IdeMeshOptimizer;
00037 class IdeVertexBuffer;
00038 class IdeDriver;
00039 
00040 /// Gets the IdeMeshOptimizer singleton pointer
00041 DEMESHOPT_API IdeMeshOptimizer* IdeMeshOptimizer_GetMeshOptPtr();
00042 
00043 /// class used for optimizing the vertices in a mesh.
00044 /// Related functions: IdeMeshOptimizer_GetMeshOptPtr
00045 //class IdeMeshOptimizer
00046 DE3D_INTERFACE_(IdeMeshOptimizer)
00047 {
00048 protected:
00049     virtual ~IdeMeshOptimizer() {}
00050 public:
00051     /// reorders the faces in an index buffer to use a post-transform cache of a given size
00052     /// @param VBuffer Vertex buffer containing index stream to be optimized
00053     /// @param VCacheSize Size of the post-transform cache to optimize for
00054     /// @param CCW Boolean flag for face winding. deTRUE ==> counter-clockwise
00055     virtual deBoolean OptimizeIndices(IdeVertexBuffer * VBuffer, long VCacheSize, deBoolean CCW) = 0;
00056     virtual deBoolean ReorderAllData(IdeVertexBuffer * VBuffer, long VCacheSize, deBoolean CCW) = 0;
00057 };
00058 
00059 
00060 #endif //DEMESHOPT_HPP

Generated on Mon Sep 12 19:58:32 2005 for Destiny3D by doxygen1.3-rc3